package com.xuexiang.yoyo.entity;

import java.io.Serializable;
import java.util.Date;


/**
 * Created by ssen on 2022/12/5
 */
public class User implements Serializable {

    private static final long serialVersionUID = -8850131249501501781L;
    /**
     * 主键id
     */
    private Long id;


    /**
     * 姓名
     */
    private String name;

    /**
     * 账号
     */
    private String username;

    /**
     * 身份证号
     */
    private String idCard;

    /**
     * 性别
     */
    private String sex;

    /**
     * 手机号
     */
    private String cellNumber;

    /**
     * 职称
     */
    private String jobTitle;

    /**
     * 邮箱
     */
    private String email;

    /**
     * 办公低电
     */
    private String officeLocation;

    /**
     * 从事工作类型
     */
    private String workType;

    /**
     * 备注
     */
    private String remark;

    /**
     * 是否接受短信通知: 0-否，1-true
     */
    private Boolean msgNoticeFlag;

    /**
     * 组织架构id
     */
    private Long organizationId;

    /**
     * 公司id
     */
    private Long companyId;

    /**
     * 工作岗位
     */
    private String position;

    /**
     * keycloakid
     */
    private String keycloakId;

    /**
     * 头像
     */
    private String headPicture;

    /**
     * 是否超级管理员
     */
    private Boolean isSuperAdmin;

    /**
     * 删除标识
     */
    private Boolean deleteFlag;

    /**
     * 是否第一次登录
     */
    private Boolean isFirstLogin;
    /**
     * 办公电话
     */
    private String officeCell;
    /**
     * 是否审核通过
     */
    private Boolean isCheckPass;
    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * 更新时间
     */
    private Date updateTime;
    /**
     * 联系人身份
     */
    private String contactIdentity;
    private Boolean singleUserLogin;

    private String password;
    private String token;
    private Long expirationTime;


    /**
     * 0：蓝牙
     * 1：dlms
     */
    private Integer readMeterModel;

    private Integer readMeterProtocol;

    public Integer getReadMeterModel() {
        return readMeterModel;
    }

    public void setReadMeterModel(Integer readMeterModel) {
        this.readMeterModel = readMeterModel;
    }

    public Integer getReadMeterProtocol() {
        return readMeterProtocol;
    }

    public void setReadMeterProtocol(Integer readMeterProtocol) {
        this.readMeterProtocol = readMeterProtocol;
    }

    public static long getSerialVersionUID() {
        return serialVersionUID;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getToken() {
        return token;
    }

    public void setToken(String token) {
        this.token = token;
    }

    public Long getExpirationTime() {
        return expirationTime;
    }

    public void setExpirationTime(Long expirationTime) {
        this.expirationTime = expirationTime;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getIdCard() {
        return idCard;
    }

    public void setIdCard(String idCard) {
        this.idCard = idCard;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public String getCellNumber() {
        return cellNumber;
    }

    public void setCellNumber(String cellNumber) {
        this.cellNumber = cellNumber;
    }

    public String getJobTitle() {
        return jobTitle;
    }

    public void setJobTitle(String jobTitle) {
        this.jobTitle = jobTitle;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getOfficeLocation() {
        return officeLocation;
    }

    public void setOfficeLocation(String officeLocation) {
        this.officeLocation = officeLocation;
    }

    public String getWorkType() {
        return workType;
    }

    public void setWorkType(String workType) {
        this.workType = workType;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Boolean getMsgNoticeFlag() {
        return msgNoticeFlag;
    }

    public void setMsgNoticeFlag(Boolean msgNoticeFlag) {
        this.msgNoticeFlag = msgNoticeFlag;
    }

    public Long getOrganizationId() {
        return organizationId;
    }

    public void setOrganizationId(Long organizationId) {
        this.organizationId = organizationId;
    }

    public Long getCompanyId() {
        return companyId;
    }

    public void setCompanyId(Long companyId) {
        this.companyId = companyId;
    }

    public String getPosition() {
        return position;
    }

    public void setPosition(String position) {
        this.position = position;
    }

    public String getKeycloakId() {
        return keycloakId;
    }

    public void setKeycloakId(String keycloakId) {
        this.keycloakId = keycloakId;
    }

    public String getHeadPicture() {
        return headPicture;
    }

    public void setHeadPicture(String headPicture) {
        this.headPicture = headPicture;
    }

    public Boolean getSuperAdmin() {
        return isSuperAdmin;
    }

    public void setSuperAdmin(Boolean superAdmin) {
        isSuperAdmin = superAdmin;
    }

    public Boolean getDeleteFlag() {
        return deleteFlag;
    }

    public void setDeleteFlag(Boolean deleteFlag) {
        this.deleteFlag = deleteFlag;
    }

    public Boolean getFirstLogin() {
        return isFirstLogin;
    }

    public void setFirstLogin(Boolean firstLogin) {
        isFirstLogin = firstLogin;
    }

    public String getOfficeCell() {
        return officeCell;
    }

    public void setOfficeCell(String officeCell) {
        this.officeCell = officeCell;
    }

    public Boolean getCheckPass() {
        return isCheckPass;
    }

    public void setCheckPass(Boolean checkPass) {
        isCheckPass = checkPass;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getContactIdentity() {
        return contactIdentity;
    }

    public void setContactIdentity(String contactIdentity) {
        this.contactIdentity = contactIdentity;
    }

    public Boolean getSingleUserLogin() {
        return singleUserLogin;
    }

    public void setSingleUserLogin(Boolean singleUserLogin) {
        this.singleUserLogin = singleUserLogin;
    }

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", username='" + username + '\'' +
                ", idCard='" + idCard + '\'' +
                ", sex='" + sex + '\'' +
                ", cellNumber='" + cellNumber + '\'' +
                ", jobTitle='" + jobTitle + '\'' +
                ", email='" + email + '\'' +
                ", officeLocation='" + officeLocation + '\'' +
                ", workType='" + workType + '\'' +
                ", remark='" + remark + '\'' +
                ", msgNoticeFlag=" + msgNoticeFlag +
                ", organizationId=" + organizationId +
                ", companyId=" + companyId +
                ", position='" + position + '\'' +
                ", keycloakId='" + keycloakId + '\'' +
                ", headPicture='" + headPicture + '\'' +
                ", isSuperAdmin=" + isSuperAdmin +
                ", deleteFlag=" + deleteFlag +
                ", isFirstLogin=" + isFirstLogin +
                ", officeCell='" + officeCell + '\'' +
                ", isCheckPass=" + isCheckPass +
                ", createTime=" + createTime +
                ", updateTime=" + updateTime +
                ", contactIdentity='" + contactIdentity + '\'' +
                ", singleUserLogin=" + singleUserLogin +
                '}';
    }
}
